/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package bs.tesoreria.modelo;

import bs.global.modelo.Comprobante;
import java.util.Date;
import java.util.List;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.DiscriminatorValue;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 *
 * @author Claudio
 *
 * Entidad que registra los comprobantes de proudccion
 *
 */
@Entity
@DiscriminatorValue("FC")
public class ComprobanteTesoreria extends Comprobante {
        
    @OneToMany(cascade = CascadeType.ALL, mappedBy = "comprobante", fetch=FetchType.LAZY)
    private List<ConceptoPorComprobanteTesoreria> conceptos;
    
    @JoinColumn(name = "DEBCTA", referencedColumnName = "CODIGO", nullable = false)
    @ManyToOne(fetch = FetchType.LAZY)
    private CuentaTesoreria cuentaTesoreriaDebe;
    
    @JoinColumn(name = "HABCTA", referencedColumnName = "CODIGO", nullable = false)
    @ManyToOne(fetch = FetchType.LAZY)
    private CuentaTesoreria cuentaTesoreriaHaber;
    
    @Column(name = "TIPMOV")
    private Integer tipoMovimiento;
    
    
    
    @Column(name = "CJCLASIF", length = 1)
    private String cjclasif;
    @Column(name = "CJMODASI", length = 2)
    private String cjmodasi;
    @Column(name = "CJCODASI", length = 6)
    private String cjcodasi;
    @Column(name = "CJCODCAJ", length = 1)
    private String cjcodcaj;
    @Column(name = "CJDEFITM", length = 1)
    private String cjdefitm;
    @Column(name = "CJVALCTA", length = 1)
    private String cjvalcta;
    @Column(name = "CJREQCOB", length = 1)
    private String cjreqcob;
    @Column(name = "CJTRAFCH", length = 1)
    private String cjtrafch;
    @Column(name = "CJFCHDES")
    @Temporal(TemporalType.DATE)
    private Date cjfchdes;
    @Column(name = "CJDIMUNI", length = 1)
    private String cjdimuni;
    @Column(name = "CJINCSUB", length = 1)
    private String cjincsub;
    @Column(name = "CJSUBDIA", length = 1)
    private String cjsubdia;
    @Column(name = "CJCIERRE", length = 1)
    private String cjcierre;
    @Column(name = "CJLECTOR", length = 6)
    private String cjlector;

    public String getCjclasif() {
        return cjclasif;
    }

    public void setCjclasif(String cjclasif) {
        this.cjclasif = cjclasif;
    }

    public String getCjmodasi() {
        return cjmodasi;
    }

    public void setCjmodasi(String cjmodasi) {
        this.cjmodasi = cjmodasi;
    }

    public String getCjcodasi() {
        return cjcodasi;
    }

    public void setCjcodasi(String cjcodasi) {
        this.cjcodasi = cjcodasi;
    }

    public String getCjcodcaj() {
        return cjcodcaj;
    }

    public void setCjcodcaj(String cjcodcaj) {
        this.cjcodcaj = cjcodcaj;
    }

    public String getCjdefitm() {
        return cjdefitm;
    }

    public void setCjdefitm(String cjdefitm) {
        this.cjdefitm = cjdefitm;
    }

    public String getCjvalcta() {
        return cjvalcta;
    }

    public void setCjvalcta(String cjvalcta) {
        this.cjvalcta = cjvalcta;
    }

    public String getCjreqcob() {
        return cjreqcob;
    }

    public void setCjreqcob(String cjreqcob) {
        this.cjreqcob = cjreqcob;
    }

    public String getCjtrafch() {
        return cjtrafch;
    }

    public void setCjtrafch(String cjtrafch) {
        this.cjtrafch = cjtrafch;
    }

    public Date getCjfchdes() {
        return cjfchdes;
    }

    public void setCjfchdes(Date cjfchdes) {
        this.cjfchdes = cjfchdes;
    }

    public String getCjdimuni() {
        return cjdimuni;
    }

    public void setCjdimuni(String cjdimuni) {
        this.cjdimuni = cjdimuni;
    }

    public String getCjincsub() {
        return cjincsub;
    }

    public void setCjincsub(String cjincsub) {
        this.cjincsub = cjincsub;
    }

    public String getCjsubdia() {
        return cjsubdia;
    }

    public void setCjsubdia(String cjsubdia) {
        this.cjsubdia = cjsubdia;
    }

    public String getCjcierre() {
        return cjcierre;
    }

    public void setCjcierre(String cjcierre) {
        this.cjcierre = cjcierre;
    }

    public String getCjlector() {
        return cjlector;
    }

    public void setCjlector(String cjlector) {
        this.cjlector = cjlector;
    }

    public List<ConceptoPorComprobanteTesoreria> getConceptos() {
        return conceptos;
    }

    public void setConceptos(List<ConceptoPorComprobanteTesoreria> conceptos) {
        this.conceptos = conceptos;
    }

    public CuentaTesoreria getCuentaTesoreriaDebe() {
        return cuentaTesoreriaDebe;
    }

    public void setCuentaTesoreriaDebe(CuentaTesoreria cuentaTesoreriaDebe) {
        this.cuentaTesoreriaDebe = cuentaTesoreriaDebe;
    }

    public CuentaTesoreria getCuentaTesoreriaHaber() {
        return cuentaTesoreriaHaber;
    }

    public void setCuentaTesoreriaHaber(CuentaTesoreria cuentaTesoreriaHaber) {
        this.cuentaTesoreriaHaber = cuentaTesoreriaHaber;
    }

    public Integer getTipoMovimiento() {
        return tipoMovimiento;
    }

    public void setTipoMovimiento(Integer tipoMovimiento) {
        this.tipoMovimiento = tipoMovimiento;
    }
           
}
